package com.myBlog.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.myBlog.domain.ResponseResult;
import com.myBlog.domain.dto.CategoryDTO;
import com.myBlog.domain.entity.Category;
import com.myBlog.domain.vo.CategoryVo;
import com.myBlog.domain.vo.PageVo;

import java.util.List;


/**
 * 分类表(Category)表服务接口
 *
 * @author makejava
 * @since 2023-03-13 16:57:03
 */
public interface CategoryService extends IService<Category> {

    /**
     * 获取文章
     * @return
     */
    ResponseResult getCategoryList();

    /**
     * 查询所有分类接口
     * @return
     */
    List<CategoryVo> listAllCategory();

    /**
     * 分页条件查询
     * @param pageNum
     * @param pageSize
     * @param categoryDTO
     * @return
     */
    ResponseResult<PageVo> list(Integer pageNum, Integer pageSize, CategoryDTO categoryDTO);

    /**
     * 根据分类id查询分类信息
     * @param categoryId
     * @return
     */
    ResponseResult getCategoryInfo(Long categoryId);

    /**
     * 根据id删除类别
     * @param ids
     * @return
     */
    ResponseResult deleteByIds(List<Long> ids);

    /**
     * 添加分类
     * @param categoryDTO
     * @return
     */
    ResponseResult addCategory(CategoryDTO categoryDTO);

    /**
     * 修改分类
     * @param categoryDTO
     * @return
     */
    ResponseResult updateCategory(CategoryDTO categoryDTO);
}

